package com.region.http.client.annotation.request;

import com.region.http.client.common.ContentType;
import com.region.http.client.request.HttpExecutor;

import java.lang.annotation.*;

/**
 * The request annotation, request type is delete
 *
 * @author liujieyu
 * @date 2023/6/4 22:16
 * @desciption
 */
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = {ElementType.METHOD})
@Documented
public @interface DeleteUrl {

    /**
     * The Request Url
     *
     * @return
     */
    String value() default "";

    /**
     * Content-Type
     *
     * @return
     */
    ContentType contentType() default ContentType.NULL;

    /**
     * Connect Time
     *
     * @return
     */
    int connectTime() default -1;

    /**
     * The Read Time from request
     *
     * @return
     */
    int readTime() default -1;

    /**
     * The request time
     *
     * @return
     */
    int requestTime() default -1;

    /**
     * Initiating HTTP request actuator class
     * The item is in singleton mode
     *
     * @return
     */
    Class<? extends HttpExecutor> executor() default HttpExecutor.class;
}

